package com.powernode.dto;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
import com.powernode.validation.UpdateGroup;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.util.List;
@Data
public class ProductDto {

    /**
     * 商品ID
     */
    private Long id;

    /**
     * 分类ID
     */
    private Long categoryId;

    /**
     * 商品标题
     */
    private String title;

    /**
     * 商品简介
     */
    private String intro;

    /**
     * 商品主图
     */
    private String img;

    /**
     * 商品详情图片
     * 因为前端新增窗口是分为两部分，图片部分与其他文本内容分开，请求也分为两次，所以图片校验不能在整体校验，放在业务层单独校验
     * typeHandler = JacksonTypeHandler是设置数据库中字段为json类型的数据映射到Java实体时可以转为list集合
     */
    private List<String> imgList;

    /**
     * 商品销售价格
     */
    private BigDecimal price;

    /**
     * 商品原价
     */
    private BigDecimal originalPrice;

    /**
     * 商品详情
     */
    private String detail;

    /**
     * 商品状态：0-未上架，1-上架，2-下架，3-删除
     */
    private Integer status;

    /**
     * 库存
     */
    private Integer stock;

    /**
     * 销量
     */
    private Integer sales;
}
